|
Author |
Thread Statistics | Show CCP posts - 0 post(s) |

Agent Unknown
Caldari
|
Posted - 2010.02.04 21:39:00 -
[1]
Edited by: Agent Unknown on 05/02/2010 20:11:45 Edited by: Agent Unknown on 04/02/2010 21:57:30 Edited by: Agent Unknown on 04/02/2010 21:39:47 TeamSpeak For EVE
Version: 1.0
It's finally done. I've been working on this script for a couple weeks now, and I've ironed out all the bugs I could find from testing it myself.
Basically, this script is a web-based application for people to register on your TeamSpeak 3 server to gain access to additional permissions and that sort of thing. It uses a PHP framework written by TeamSpeak staff themselves, so checkout the readme for more information on that. All it requires is the Limited API!
Features:
* Allows people to register on your TS server securely. * The cron script, when set up to run automatically, keeps your TS secure by automatically stripping access when a character leaves the corp/alliance. (Note: This will apply to standings "resets" once that part is finished). * A prettier setup method.
Planned features:
* Standings based access! * Use a separate group for each corp and/or alliance (access to private channels, etc) * Assign client-specific rights to a "private" channel (officers for example).
A couple things to note:
* It doesn't support giving access by standings...yet. I have some reading to do on the API for this, but if this script is liked, I'll definitely make this a priority. * While I did test this myself, there could be possible bugs. Be sure to report them! * THIS IS A BETA! It may be 1.0, but I don't expect it to be perfect. Your mileage may vary.  * READ the readme file for instructions on how to install!! It's not the friendliest install method, but it works for now. 
Download link: Linkage
Enjoy!
Edit: I forgot to mention the cron file in the readme...I'll include documentation on that next version, but it's simple: just set up a daily cron job with that as the target. It will check all the users registered using the site and update access as needed. You can run it as frequently as hourly if needed. Also, I now have one of those annoying sigs.
Originally by: CCP Fallout
And yelling is bad. It makes the baby Jesus cry and when the baby Jesus cries I'm forced to lock threads
|

Agent Unknown
Caldari
|
Posted - 2010.02.05 20:09:00 -
[2]
Originally by: Lena Planeswalker I made something like this during my christmas vacation, the problem im now running into is that once a user "registers" the only way to remove it is to manually do it, for example if the person leaves the corp/alliance.
Yeah, I overcame that issue by storing the user's API in a table. This allows me to cross-reference their TS UID with their API, which makes it simple to simply run through each and check corp/alliance using the cron script. The alternative is to make TS run with a MySQL database and throw a reference table there, but I'd rather keep it simple. Also, I now have one of those annoying sigs.
Originally by: CCP Fallout
And yelling is bad. It makes the baby Jesus cry and when the baby Jesus cries I'm forced to lock threads
|

Agent Unknown
Caldari
|
Posted - 2010.02.06 04:56:00 -
[3]
Originally by: Xornicon Altair This looks good. We were considering something similar to this with hooks into our SMF forums which uses the ESAM module. If you'd be willing to do some extra work and find a way to hook it in, that would be cool. You can find ESAM info here: http://code.google.com/p/esam/
I'll see what I come up with. SMF may be easier to use for integration once I "attempt" to work in corp-specific server groups on TS itself. Currently, the integration with the phpBB 3 API mod is just an extra security step (comparing the specified API with the one stored in phpBB). Also, I now have one of those annoying sigs.
Originally by: CCP Fallout
And yelling is bad. It makes the baby Jesus cry and when the baby Jesus cries I'm forced to lock threads
|

Agent Unknown
Caldari
|
Posted - 2010.02.10 15:48:00 -
[4]
Originally by: Snake O'Donell Any way we could get militia support integrated into this?
All you should have to pull is /char/FacWarStats.xml.aspx and the factionName attribute then verify against the list. I will try to see if I can add it in myself this week.
That should be simple enough...I'll see what I can do. There's quite a bit I want to do for a "new" release.  Also, I now have one of those annoying sigs.
Originally by: CCP Fallout
And yelling is bad. It makes the baby Jesus cry and when the baby Jesus cries I'm forced to lock threads
|

Agent Unknown
Caldari
|
Posted - 2010.02.10 21:07:00 -
[5]
Originally by: Snake O'Donell I *think* I have gotten the FW info added in correctly, however I don't have a testing server up yet to do a quick test on it. It was pretty straight forward. I can email you the modded source if you want. I am going to play around with restricted access corp channels and stuff this afternoon using the setChannelGroup function in the library. That should be rather straightforward as well.
Cool. I've actually written the FW stuff into it already, but I'd love to see the modded source to be sure I did it right. 
I'm sure it's fairly simple to mess with setChannelGroup, but using setServerGroup may also work since each corp can have its own group. Right now I'm working on standings-based access (which I may be able to test). All of that should be done by Friday...if not, it'll be next week since I'm gone this weekend.
Thanks for your help btw.  Also, I now have one of those annoying sigs.
Originally by: CCP Fallout
And yelling is bad. It makes the baby Jesus cry and when the baby Jesus cries I'm forced to lock threads
|

Agent Unknown
Caldari
|
Posted - 2010.02.11 20:28:00 -
[6]
Version 1.1 has been released. Here is the changelog:
============ VERSION 1.1 - 2/11/2010 ============ * Added Faction Warfare verification (militia) * Added standings-based verification * Changed database configuration options from db.php to config.php * Added more configuration options * Added additional requirement: TeamSpeak 3 MUST have MySQL enabled.
Take note of the last option! If you don't know how to set up MySQL for TS3, please let me know. This is required for the cron script to function properly. Hope you enjoy it!  Also, I now have one of those annoying sigs.
Originally by: CCP Fallout
And yelling is bad. It makes the baby Jesus cry and when the baby Jesus cries I'm forced to lock threads
|

Agent Unknown
Caldari
|
Posted - 2010.02.12 05:31:00 -
[7]
Edited by: Agent Unknown on 12/02/2010 05:31:50
Originally by: Snake O'Donell I finally got a TS3 server setup to test this, I have tried several mods of verification, and I am getting error110(time out) whenever I try to reg a user. Also my ts server keeps diing on me for no reason =(
Check your logs. This script shouldn't crash it.
Edit: Also, make sure serverquery is enabled and the proper port is selected.  Also, I now have one of those annoying sigs.
Originally by: CCP Fallout
And yelling is bad. It makes the baby Jesus cry and when the baby Jesus cries I'm forced to lock threads
|

Agent Unknown
Caldari
|
Posted - 2010.02.12 23:54:00 -
[8]
Originally by: Snake O'Donell Now getting error ID0.
I'll need more information. Does it have a message that comes with it? Pastebin your config.php (edit out passwords and api obviously) so I can see what's up.
Originally by: Squizz Caphinator It's time to support this project! Look for me to be a regular pain in the ass hehe By the time I'm done working with you we'll have full ESAM integration with your TS3 module!
Heh...that will likely come when roles-based (i.e, channels for "directors" and such) is ready to go. The phpBB3 integration is just an extra security layer; it could be modified a bit to work with SMF as well, unless you have something else in mind.  Also, I now have one of those annoying sigs.
Originally by: CCP Fallout
And yelling is bad. It makes the baby Jesus cry and when the baby Jesus cries I'm forced to lock threads
|

Agent Unknown
Caldari
|
Posted - 2010.02.14 01:24:00 -
[9]
Originally by: Snake O'Donell http://pastebin.com/mac8165
Nothing other than error ID0.
Checking: - Situation Grey
Error: Cannot assign server group. Be sure that your name on the TeamSpeak server is correct. Your TeamSpeak name should be -S.G- GreatNova for verification. You can change it afterward. Technical details: (ID 0)
It seems to be a bug with the faction warfare portion of the checking. This doesn't surprise me seeing how I can't test that portion. 
Try this:
IN functions.php FIND:
function checkFaction($f,$u,$api,$char) { $url = "http://api.eve-online.com/char/FacWarStats.xml.aspx?userID=" . $u ."&apikey=" . $api . "&characterID=" . $char; $xml = simplexml_load_file($url); $r = (string) $xml->result->factionName;
ADD AFTER:
echo '<p>Faction check: Yours: '.$r.' - Allowed: '.$f.'</p>';
Show me the result after this. Also, I now have one of those annoying sigs.
Originally by: CCP Fallout
And yelling is bad. It makes the baby Jesus cry and when the baby Jesus cries I'm forced to lock threads
|

Agent Unknown
Caldari
|
Posted - 2010.02.14 18:52:00 -
[10]
Hmm...interesting. How about this then?
IN functions.php:
FIND
try { $ts = TeamSpeak3::factory("serverquery://".$c->tsname.":".$c->tspass."@".$c->tshost.":".$c->tsport."/"); $virt = $ts->serverGetByPort($c->tscport); $name = $ticker." ".$username; $client = $virt->clientGetByName($name); $client->addServerGroup($c->group); } catch(Exception $e) { echo "<p>Error: Cannot assign server group. Be sure that your name on the TeamSpeak server is correct. Your TeamSpeak name should be <strong>".$ticker." ".$username."</strong> for verification. You can change it afterward.</strong><br /> Technical details: <br /> (ID " . $e->getCode() . ") ". $e->getMessage() . "</p>"; die(); }
REPLACE WITH:
$ts = TeamSpeak3::factory("serverquery://".$c->tsname.":".$c->tspass."@".$c->tshost.":".$c->tsport."/"); $virt = $ts->serverGetByPort($c->tscport); $name = $ticker." ".$username; $client = $virt->clientGetByName($name); $client->addServerGroup($c->group);
This should make it throw an uncaught exception and hopefully give more information. Also, I now have one of those annoying sigs.
Originally by: CCP Fallout
And yelling is bad. It makes the baby Jesus cry and when the baby Jesus cries I'm forced to lock threads
|
|

Agent Unknown
Caldari
|
Posted - 2010.02.15 18:49:00 -
[11]
Is your alliance in the $allylist array? $myname is used for standings validation.
I've received some much needed feedback and noticed some issues that should've been fixed a while ago. I'm working on those fixes now. Also, 1.2 will be the first to feature web-based configuration (don't expect it to be pretty though ).
Thanks for all that tested it so far. Also, I now have one of those annoying sigs.
Originally by: CCP Fallout
And yelling is bad. It makes the baby Jesus cry and when the baby Jesus cries I'm forced to lock threads
|

Agent Unknown
Caldari
|
Posted - 2010.02.16 20:12:00 -
[12]
Originally by: Rockvell Prescribed name of the alliance as you put in $ allylist array error was replaced by another. It is necessary to you in the next version to make a detailed instruction :-) Server TS 3.0.0-beta18 [Build: 10190]
"Notice: Undefined variable: verbose in /var/www/html/ts3/verify.php on line 41 Checking: Red Alliance - Russian Specnaz
Notice: Undefined variable: key in /var/www/html/ts3/functions.php on line 55 Error: Cannot assign server group. Be sure that your name on the TeamSpeak server is correct. Your TeamSpeak name should be RSTC1 Rockvell for verification. You can change it afterward. Technical details: (ID 512) invalid clientID"
Ah, okay. Invalid clientID means it couldn't find your name on TS. Make sure your name matches what it wants you to have it as. As for the notices, those are my fault and will be fixed with my next bugfix release.
Originally by: GreatNova Fatal error: Uncaught exception 'TeamSpeak3_Transport_Exception' in /var/www/ts/libraries/TeamSpeak3/Transport/TCP.php:55 Stack trace: #0 /var/www/ts/libraries/TeamSpeak3/Transport/TCP.php(103): TeamSpeak3_Transport_TCP->connect() #1 /var/www/ts/libraries/TeamSpeak3/Adapter/ServerQuery.php(70): TeamSpeak3_Transport_TCP->readLine() #2 /var/www/ts/libraries/TeamSpeak3/TeamSpeak3.php(180): TeamSpeak3_Adapter_ServerQuery->__construct(Object(TeamSpeak3_Transport_TCP)) #3 /var/www/ts/functions.php(57): TeamSpeak3::factory('serverquery://s...') #4 /var/www/ts/verify.php(52): tsAdd('-S.G-', 'GreatNova', 834245196, 'D2A69E5E2A7D452...') #5 {main} thrown in /var/www/ts/libraries/TeamSpeak3/Transport/TCP.php on line 55
That error tells me that the library wasn't able to connect to the ServerQuery server on your TS3 server. Be sure that it's enabled and outside applications can access it. The default port is 10011. Also, I now have one of those annoying sigs.
Originally by: CCP Fallout
And yelling is bad. It makes the baby Jesus cry and when the baby Jesus cries I'm forced to lock threads
|

Agent Unknown
Caldari
|
Posted - 2010.02.16 22:01:00 -
[13]
Version 1.2 has been released. The OP will be modified with the new link.
The changelog:
======================================================== TeamSpeak For EVE Coded by Agent Unknown
Version: 1.2
CHANGELOG ========================================================
============ VERSION 1.2 - 2/16/2010 ============ * Removed phpBB3 API support. This was really not needed. May be replaced with roles integration. * Changed lang.php from global variables to a class of its own. * Added a couple configuration options and clarified some of the comments. * Fixed a bug where notices would be thrown when adding users. * fixed a bug where $verbose was not defined. * Removed need for MySQL support within TS3. This was only used in the cron script.
I was unable to test the standings and faction based verification, so hopefully it works.  Also, I now have one of those annoying sigs.
Originally by: CCP Fallout
And yelling is bad. It makes the baby Jesus cry and when the baby Jesus cries I'm forced to lock threads
|

Agent Unknown
Caldari
|
Posted - 2010.02.17 17:56:00 -
[14]
Edited by: Agent Unknown on 17/02/2010 18:01:59 Edited by: Agent Unknown on 17/02/2010 17:58:58
Originally by: Tobias Sjodin Edited by: Tobias Sjodin on 17/02/2010 12:19:08 n/m
Figured out that it's the serveradmin name and password you wanted, now it works, except with this error:
Syntax error: Column count doesn't match value count at row 1
OP, could this help? [CLICK ME]
Yep...I know what that error is. In my effort to release a fix, I had to add a new column to the database; but I forgot to fix the setup.php file to include the new column.
When you have a chance to, create a file called fix.php in the same directory and put this in:
<?php require_once("db.php"); require_once("config.php"); $db = new DB; $c = new Config; $sql = "ALTER TABLE `".$c->db_name."`.`tsclient` ADD COLUMN `cid` VARCHAR(45) NOT NULL AFTER `charid`;"; $r = $db->send($sql); if (!$r) die("Error."); else { echo "Done."; unlink(fix.php); } ?>
Fixed setup.php file (delete table if you want to): Linkage Also, I now have one of those annoying sigs.
Originally by: CCP Fallout
And yelling is bad. It makes the baby Jesus cry and when the baby Jesus cries I'm forced to lock threads
|

Agent Unknown
Caldari
|
Posted - 2010.02.22 06:25:00 -
[15]
Edited by: Agent Unknown on 22/02/2010 06:25:21
Originally by: Kylynn Hassen Ok, I coded in a generic workaround using cURL to fetch and write to a local file if the user sets a var in the config. Just if/else logic pretty much.
3 new .xml files are used to store information from charID, corpsheet and charsheet for use in functions.php and verify.php, these however are not wiped empty after use, which has yet to be implemented.
I would like someone to test this solution please, since after I coded it in I found the TS3 PHP framework will not use my version of PHP (which is 5.2 just not 1+).
contact Dal' Hassen in-game if you'd like to see the changes or try them.
I'll shoot you an evemail tomorrow...just logged for the night. Thanks for that contribution by the way; saves me having to fuss with it. 
Edit: You can use unlink() to delete the files after use. Also, I now have one of those annoying sigs.
Originally by: CCP Fallout
And yelling is bad. It makes the baby Jesus cry and when the baby Jesus cries I'm forced to lock threads
|

Agent Unknown
Caldari
|
Posted - 2010.02.23 16:28:00 -
[16]
Originally by: ShadowandLight does the API tell if someone has an alt ( on the same account ) with red standings to the owner's API and if so im assuming it wont let them join?
It doesn't check for this...I suppose it should. 
This is actually my first API-driven app, so I experimented quite a bit. This is definitely something that will be added, along with the file_get_contents workaround that someone sent to me yesterday. Also, I now have one of those annoying sigs.
Originally by: CCP Fallout
And yelling is bad. It makes the baby Jesus cry and when the baby Jesus cries I'm forced to lock threads
|

Agent Unknown
Caldari
|
Posted - 2010.02.24 00:55:00 -
[17]
Version 1.3 has been released. Major change is ShadowandLight's suggestion. 
Changelog is below. Link will be updated shortly.
============ VERSION 1.3 - 2/23/2010 ============ * MAJOR: Added "alt checking" to standings verification. The script now checks if any alts on the same account are in a red corp/alliance and denies access if it finds one. * Standings are now cached during the check in the case of multiple characters on the same account. * Removed usage of file_get_contents in favor of SimpleXML's method. * Added cron instructions to readme. * Added a new table column (cid) to install. This fixes a bug with the script if 1.3 was installed without the workaround on the forum thread. * A bit of code cleanup. Also, I now have one of those annoying sigs.
Originally by: CCP Fallout
And yelling is bad. It makes the baby Jesus cry and when the baby Jesus cries I'm forced to lock threads
|

Agent Unknown
Caldari
|
Posted - 2010.02.24 03:08:00 -
[18]
Edited by: Agent Unknown on 24/02/2010 03:09:58 Edited by: Agent Unknown on 24/02/2010 03:09:29
Originally by: ShadowandLight isk sent :)
also.... could we add a feature to require the TS3 unique ID to this as well?
Paxton Fed has required it on their TS for some time, seems to be a good idea?
Thank you very much for the ISK (to both of you). It'll be put to good use. 
The script uses the Unique ID in order to identify who the people are on the server, and it extracts their ID from their name using the framework. Of course, you could mean that they instead specify their UID instead of having to use a specific name... Also, I now have one of those annoying sigs.
Originally by: CCP Fallout
And yelling is bad. It makes the baby Jesus cry and when the baby Jesus cries I'm forced to lock threads
[url="http://w |

Agent Unknown
Caldari
|
Posted - 2010.02.24 14:06:00 -
[19]
Originally by: Tobias Sjodin Is it possible to have it approve both alliances and certain corporations?
eg. if I say "true" to both alliance and corp, will it allow both alliances from the alliance-array as well as the corporations from the corporations array? Or can only one be true?
If both are set to true, because of the way the program flows it will only check the alliance list. I was actually thinking about modifying it a bit to allow both instead of separate ones... By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|

Agent Unknown
Caldari
|
Posted - 2010.02.24 21:47:00 -
[20]
Edited by: Agent Unknown on 24/02/2010 21:50:22
Originally by: Shau Chen
Fatal error: Cannot redeclare checkstandings() (previously declared in /var/www/site/ts3-auth/functions.php:78) in /var/www/site/ts3-auth/functions.php on line 133
Now that's a weird error....
Fixed the download link as well. I'll double-check that error, but it shouldn't happen.
Edit: Completely my fault. I forgot to change the name of one of the functions.  By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|
|

Agent Unknown
Caldari
|
Posted - 2010.02.25 12:51:00 -
[21]
Originally by: ShadowandLight fixed now? should i dl the new copy?
Yeah, it's fixed. By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|

Agent Unknown
Caldari
|
Posted - 2010.02.25 17:19:00 -
[22]
Edited by: Agent Unknown on 25/02/2010 17:19:12 Version 1.3.1 has been released. This released fixes my obvious failure to test the script before releasing it; the release beforehand did not work at all. 
============ VERSION 1.3.1 - 2/25/2010 ============ * MAJOR: Fixed bug that prevented script from working at all. Lack of testing is the cause... * Fixed script not assigning two different groups based on standings verification. * Fixed bug that may have prevented standings verification from working. * Added php verbose checking when verbose is set to true.
Originally by: graves biatch got ts3 installed have it run the mysql you script installed aswell but one minor problem
at first page it will check for the api after that on verify.php it will go blank any ideas?
Check out the new one. It was completely my fault. By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|

Agent Unknown
Caldari
|
Posted - 2010.02.25 21:38:00 -
[23]
Originally by: ShadowandLight just tried 1.3.1
im getting the same blank page from verify.php as before
Okay. Enable verbose mode and paste the outpost (masking anything that shouldn't be shown). By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|

Agent Unknown
Caldari
|
Posted - 2010.02.25 23:43:00 -
[24]
Originally by: ShadowandLight //output for debugging if ($c->verbose == true) { echo "<p>Corporation ID: ".$corpid."<br />Corporation Name: ".$corp."<br />Alliance Name: ".$alliance."<br />Ticker: ".$ticker."</p>"; }
already on?
Should be in the config file:
public $verbose = false;
Set it to true. By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|

Agent Unknown
Caldari
|
Posted - 2010.02.26 03:21:00 -
[25]
Edited by: Agent Unknown on 26/02/2010 03:21:07
Originally by: ShadowandLight ok heres the error
Notice: Trying to get property of non-object in teamspeak/functions.php on line 175
Fatal error: Call to a member function attributes() on a non-object in teamspeak/functions.php on line 175
Okay, then there's something definitely up with the API...
Try this:
In functions.php FIND:
function getID($u) { $url = "http://api.eve-online.com/eve/CharacterID.xml.aspx?names=" . $u; $url = str_replace(' ','%20',$url); $xml = simplexml_load_file($url); $id = (int) $xml->result->rowset->row[0]->attributes()->characterID; return ($id) ? $id : false; }
REPLACE WITH:
function getID($u) { $url = "http://api.eve-online.com/eve/CharacterID.xml.aspx?names=" . $u; $url = str_replace(' ','%20',$url); $xml = simplexml_load_file($url); if (isset($xml->error)) die("API Error while fetching character ID: ".$xml->error); $id = (int) $xml->result->rowset->row[0]->attributes()->characterID; return ($id) ? $id : false; }
By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|

Agent Unknown
Caldari
|
Posted - 2010.02.26 14:54:00 -
[26]
Originally by: ShadowandLight ok
now
API Error while fetching character ID: Invalid or missing list of names.
Okay...I'm very confused why it would do that. Make sure that:
1) That $char = 'Your CEO character name'; in the config file 2) When registering with the API, make sure that there's a name in the first box.
These are the only two situations where it uses the character name and needs the ID. I'll be on in the afternoon to troubleshoot personally as well. By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|

Agent Unknown
Caldari
|
Posted - 2010.02.27 03:54:00 -
[27]
Originally by: ShadowandLight PHP 5.1.6 is what i have installed on this server, is that supported?
Tested in 5.2...from your error message sent ingame it seems like it requires 5.2 to work. By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|

Agent Unknown
Caldari
|
Posted - 2010.03.02 00:05:00 -
[28]
Originally by: Lavoslav Penkala Edited by: Lavoslav Penkala on 01/03/2010 19:58:04 Edited by: Lavoslav Penkala on 01/03/2010 19:48:39
Originally by: Dal' Hassen Spaces in that form wont intrude on the execution of the script, the spaces are only there so the author, or others can see it clearly.
I won't claim I'm an expert with php, but before I did that I was getting 3 errors while attempting to execute. Removing the spaces fixed it... (I'm not complaining).
Also one more question to the author regarding corp/aliance names in config.php
What do I do if I need to write in $allylist alliance that has character ' in the name? eg. Aliance named "Ushra'Khan". Would I write that as 'Ushra\'Khan' or something else?
You can use 'Ushra\'Khan' and it should work, or change the quotes to " ".
As for the cron script, "Finished job." is the expected result when run manually. It has a verbose mode as well (set $verbose to true in the config) that will show what it's doing. That spacing issue is weird though...but if it works, it works.  By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|

Agent Unknown
Caldari
|
Posted - 2010.03.02 15:55:00 -
[29]
Edited by: Agent Unknown on 02/03/2010 15:56:30
Originally by: ShadowandLight Edited by: ShadowandLight on 02/03/2010 03:54:08 upgrade instructions for php upgrade to 5.2
used / working on centos
http://www.atomicorp.com/wiki/index.php/PHP
edit: new error after doing the upgrade
(ID 111) Connection refused when trying to do the api
Heh...lots of errors for you with this script eh? 
From the looks of it, the framework cannot access the ServerQuery portion of TS3. Check the logs in TS3 to make sure that it's listening on port 10011, and that the port isn't blocked. If it's not working, then you can try changing the port by:
1) Create an ini file called ts3server.ini (if one doesn't exist) 2) In this file, put this in:
query_port=portnumber (whatever port would be usable is suitable) query_ip=0.0.0.0 (binds to all IPs, set if needed (shared hosting))
3) Save the file, then run the server. It should read from this file by default. If not, put inifile=ts3server.ini at the end of the command. By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|

Agent Unknown
Caldari
|
Posted - 2010.03.04 16:47:00 -
[30]
There is currently a bug in the cron script that will sometimes cause the script to fail. You can correct this yourself by downloading this file and copying over the old one.
Linkage
Of course, you have to rename the extension from .phps to .php for it to work.  By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|
|

Agent Unknown
Caldari
|
Posted - 2010.03.06 00:12:00 -
[31]
Originally by: mocrt Hi There
Great job with this.
I have installed but am getting:
API: Authentication failure.
API Error: Unable to verify API. Check it and try again.
I am DEFO sure (checked and rechecked) that I am using the 'User ID' and API key from the API page on the main eve site. Always comes up with that. Tried it from TWO accounts.
Any suggestions? I have verbose on.
Tar
Mo
Are you sure you have the character name correct in the form? That error occurs when it can't pull up your character sheet. It's an error with the API, not with the script...so it's difficult to pinpoint. By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|

Agent Unknown
Caldari
|
Posted - 2010.03.06 00:25:00 -
[32]
Originally by: Taran Tenus
Originally by: mocrt Hi There
Great job with this.
I have installed but am getting:
API: Authentication failure.
API Error: Unable to verify API. Check it and try again.
I am DEFO sure (checked and rechecked) that I am using the 'User ID' and API key from the API page on the main eve site. Always comes up with that. Tried it from TWO accounts.
Any suggestions? I have verbose on.
Tar
Mo
Interesting. Full API key working... Thoughts?
And now I have got past that one...i'm getting:
Error: Cannot assign server group. Be sure that your name on the TeamSpeak server is correct. Your TeamSpeak name should be 1SA mocrt for verification. You can change it afterward. Technical details: (ID 0) php_network_getaddresses: getaddrinfo failed: No such host is known.
Heh, the API key issue might be some oddity with the API...the character sheet only needs limited (and the API spits out another error if the key isn't full when needed to be).
As for that other error, make sure that you have the proper ServerQuery information in your config.php file. Using a hostname (like ts.yourdomain.com) is discouraged as DNS issues can break the script. By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|

Agent Unknown
Caldari
|
Posted - 2010.03.06 04:04:00 -
[33]
Originally by: mocrt Hi There
still going at it...the error:
(ID 0) php_network_getaddresses: getaddrinfo failed: No such host is known.
Is still an issue...does this relate to the query host and tcp port (default 10011?) or the TS Host entry?
Online now as mocrt in game if you can help! ;-)
Mo
Sent evemail. I'll be able to respond tomorrow. By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|

Agent Unknown
Caldari
|
Posted - 2010.03.06 19:53:00 -
[34]
Originally by: Nick Partridge Hiya,
Firstly great work. :-) I get the following error though any thoughts ?
Error: Cannot assign server group. Be sure that your name on the TeamSpeak server is correct. Your TeamSpeak name should be -ONYX | Nick Partridge for verification. You can change it afterward. Technical details: (ID 0) php_network_getaddresses: getaddrinfo failed: Name or service not known
Looks like you had the same issue as someone else. Instead of 127.0.0.1 for $tsname, use localhost. By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|

Agent Unknown
Caldari
|
Posted - 2010.03.06 22:14:00 -
[35]
Originally by: Nick Partridge Edited by: Nick Partridge on 06/03/2010 19:59:08 Yeah just tried that and still getting the same error I am online as Nick Partridge if your about
//ServerQuery Host public $tshost = 'localhost'; //TeamSpeak ServerQuery Name public $tsname = 'serveradmin'; //ServerQuery Password public $tspass = '*******'; //ServerQuery Port public $tsport = '10011'; //TeamSpeak client port (this is not the same as the serverquery port!) public $tscport = '9987';
Check your php.ini file and make sure allow_url_fopen = on is in there someplace. If you have root on your server, you can open your hosts file (/etc/hosts) and put the following in it:
127.0.0.1 localhost
You can also try putting in the server's IP anyway and see if it connects. By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|

Agent Unknown
Caldari
|
Posted - 2010.03.08 05:42:00 -
[36]
Originally by: Mediek Ordos This works a treat nice job. could it be possible to script it so that Alliance Corp and Standings could all be set to true at the same time. Looking forward to the SMF intergration  well done. http://www.a-c-e.eu
Thanks. I was actually thinking about re-working the alliance/corp listing. I really think that it's redundant to have because you'd have all the needed corps and alliances blue to begin with. so getting rid of it and using just the name of the corp/alliance running the server would work. That's up for discussion though.
As for SWF integration...I will have to play with those forums and see how it would fit. Only way I could see it working is to "hook" in a couple custom fields during registration (uniqueID on TS) and register on the server using that information. This will end up being a different plugin for the app...unless there's other ways to do this.
By the end of this week I expect to have a new version out, which will include:
- Additional fixes and debugging to some parts of the script (reported bugs, etc) - A more robust security when registering to prevent hijacked API keys from being abused. - Addition of some things to the database (i.e the character name used to register instead of just the ID)
Some future stuff that may or may not make it:
- A new setup script that checks requirements (url_fopen, xml) and provides more feedback on the install. - Ability to edit settings via the web. - Removal of file-based settings to a database approach. This will make it easier to add/modify settings without forcing people to reconfigure.
Suggestions, comments, etc are welcome.  By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|

Agent Unknown
Caldari
|
Posted - 2010.03.09 20:33:00 -
[37]
Edited by: Agent Unknown on 09/03/2010 20:34:27
Originally by: 1337fknThor Just an update changed serveradmin and pass now getting
TecCorporation ID: 4181**** Corporation Name: Corp Name Alliance Name: Alliance Name Ticker: ticker
Checking: alliancename - Corp
Error: Cannot assign server group. Be sure that your name on the TeamSpeak server is correct. Your TeamSpeak name should be ticker name for verification. You can change it afterward. Technical details: (ID 110) Connection timed out
"tsname" is the hostname of the ServerQuery server (which is usually your TS host). If the script is on the same box as your TS server, then it would usually look like this:
Quote:
public $tsname = 'localhost';
Some people have issues with localhost, so using the same IP as your box works too (or the hostname, like ts.yourdomain.com).
Edit: I'm working on an easier method to get this set up. My documentation is far from great and sometimes confuses people. Apologies for that.  By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|

Agent Unknown
Caldari
|
Posted - 2010.03.10 06:03:00 -
[38]
Originally by: 1337fknThor Just an update I have now installed the script on the same server as TS and am now getting
Error: Cannot assign server group. Be sure that your name on the TeamSpeak server is correct. Your TeamSpeak name should be Ticker name for verification. You can change it afterward. Technical details: (ID 512) invalid clientID
I read in a previous post to make sure my name is set to what ts wants it to be what did you mean by that exactly?
Okay. In your config file, you set $myname to your corp/alliance name. Make sure that when you're registering you put in the proper information (your character name, for example). If you get that error, make sure your name is something like TICKER NAME. Example, mine would be: -NT- Agent Unknown. No brackets, separated by a space. If your ticker has brackets, use them, but don't otherwise. You have to be logged onto the server for it to work. By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|

Agent Unknown
Caldari
|
Posted - 2010.03.18 03:57:00 -
[39]
Originally by: 0rlin I am having an issue running the cron, I am getting this error.
TS interface error: invalid serverID
Now everything is working but the cron
What is your tscport set to in config.php? By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|

Agent Unknown
Caldari
|
Posted - 2010.03.18 15:29:00 -
[40]
Originally by: 0rlin the port is not the default, its changed. Is it hard coded in the cron or is it using the config?
It uses the config. I'm not 100% sure why it would return an invalid ID. You can try opening the cron script and:
FIND:
$virt = $ts->serverGetByPort($c->tscport);
REPLACE WITH:
$virt = $ts->serverGetByPort(0000);
where 0000 is the port number you use. Don't use quotes. |
|

Agent Unknown
Caldari
|
Posted - 2010.03.21 02:33:00 -
[41]
The script doesn't output anything by default because it's designed to be run through a crontab. As for it deleting the users, there's something wrong with its verification. Set verbose to true in the config, which will allow it to give you some output.
As for updates, they may take a bit as school is being rather unforgiving (as are other things), but I hope to push out some shiny stuff next week. By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|

Agent Unknown
Caldari
|
Posted - 2010.03.21 15:40:00 -
[42]
Edited by: Agent Unknown on 21/03/2010 15:40:38 It looks like you're having issues with file_get_contents as well.
To fix this, do this with anything in cron.php:
FIND:
$xml = simplexml_load_string(file_get_contents($url));
REPLACE WITH:
$xml = simplexml_load_file($url);
This is already fixed internally. If you need more help, I can give you this file as well.
Edit: Make sure that you're running 1.3.1 as well. By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|

Agent Unknown
Caldari
|
Posted - 2010.03.21 20:47:00 -
[43]
There was an issue on my server that prevented the virtual hosts from working...so everything was out of whack. Downloads should work properly now.
Try this: Linkage
Copy the entire contents over the old cron.php file. By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|

Agent Unknown
Caldari
|
Posted - 2010.03.22 01:24:00 -
[44]
Originally by: 0rlin Thank you that seems to be working.
How hard would it be to have it look to see if you have Director Roles and add you to another group and then take it away if your no longer a director or you leave corp/alliance
That's a whole other ball game there...roles lookups require the full API, which I want to avoid having to use because of the possible security risks. By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|

Agent Unknown
Caldari
|
Posted - 2010.03.24 02:59:00 -
[45]
Originally by: 0rlin I started to debug it and stripslashes but then just turned of magic_quotes on the server. However i guess it would be better if I added it to the code.
Magic_quotes should not be used anyway. They are a security risk as improper input can cause injections and other bad things to happen.
The reason it requires registration on a new TS3 ID is for security reasons. There's no way to tell if a different ID is in fact the same person but changed their identity. The server will never know this either. By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|

Agent Unknown
Caldari
|
Posted - 2010.03.25 03:59:00 -
[46]
Originally by: 0rlin All it would need to do is look to see that the userID of the API info is already posted. At that point it could offer them to change there ts3 ID.
I had created a .NET app that controls all logins needed fro forums, ts2, ts3, openfire, mirc and more as needed. It would do all this from one ingame registration using the API info. The reason I point this out is that my method was different than yours. Where I would verify the API ingame and then create the accounts.
TS3 account was created by having them pasting there uniqueID into a field and submitting it. This allowed me flexibility to watch for people trying to register multiple ts3 uniqueIDs and if they did they would be stopped and prompted them to edit/change the uniqueID. This added security and allowed them to fix there account if they reinstalled without exporting there identity from ts3.
To be honest, I don't see the difference. If they have to give the userid and API again in order to register, then it's pointless to change the ID because of the way TS3 works (every ID is a new "user"). If anything, the script should return an error if the API is already being used to prevent abuse of stolen API information. This and a few other things are being worked on for the next version, but school has been murder the past couple weeks.
There's also a method of using the in-game browser to verify, but the fields used can be easily spoofed, so I can't rely on that for security. By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|

Agent Unknown
Caldari
|
Posted - 2010.03.25 12:36:00 -
[47]
Originally by: 0rlin
Originally by: Agent Unknown
To be honest, I don't see the difference. If they have to give the userid and API again in order to register, then it's pointless to change the ID because of the way TS3 works (every ID is a new "user"). If anything, the script should return an error if the API is already being used to prevent abuse of stolen API information. This and a few other things are being worked on for the next version, but school has been murder the past couple weeks.
There's also a method of using the in-game browser to verify, but the fields used can be easily spoofed, so I can't rely on that for security.
If you just return an error if they are already registered then how do you recover when someone reinstalls there client and gets a new ts3 uniqueID? It makes no sense to me to allow them multi registered accounts. But at the same time you need to allow for them to recover from there uniqueID change. Yes you can spoof the url of the in-game browser however it makes no difference from what your doing now. If they have the API of someone and want to use it there is nothing stopping them ATM. However that will change. Because we will soon have a way of sending in-game mails from out of game. So an eve-mail confirmation could be sent or even a hash verifier..
Yeah, the security isn't perfect. I eagerly await the new API with EVE Gate...whenever that comes out. By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|

Agent Unknown
Caldari
|
Posted - 2010.04.02 18:18:00 -
[48]
Originally by: Ferissa Til Edited by: Ferissa Til on 02/04/2010 08:31:10 Hay,
im always getting this error:
Error: Cannot assign server group. Be sure that your name on the TeamSpeak server is correct. Your TeamSpeak name should be blablabla for verification. You can change it afterward. Technical details: (ID 0) this particular software cannot be used with the installed version of PHP
I've got PHP 5.2 installed, so the error makes no sense ?!
Try updating the version. The latest is 5.2.6, and it works with that. By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|

Agent Unknown
Caldari
|
Posted - 2010.04.08 20:43:00 -
[49]
Because of the lack of time I have on this project (school, trying to find a job, etc etc etc), I have stopped all development of it until further notice. I haven't released anything in a while to begin with, but now it's official.
Those that have problems should reply on this thread. I will still be watching it, but not providing any new features/bug fixes. If someone is willing to pick up the project, please let me know. EVE mail for support queries is not advised since I tend to forget (already happened once... ). By the way, this is my signature.
TeamSpeak For EVE - API-controlled TeamSpeak 3 Access!
|

Agent Unknown
Caldari
|
Posted - 2010.08.07 15:00:00 -
[50]
Please note that I no longer provide support for this software. It is out of date and some features no longer work. I'm currently working on a new version but it will take some time to complete. I forgot to mention that you are in fact reading something that is called a signature. |
|
|
|
|